package com.yidu.hbatsams.service;

import com.yidu.hbatsams.domain.Role;
import com.yidu.hbatsams.domain.vo.ModuleVo;
import com.yidu.hbatsams.domain.vo.RoleModuleVo;
import com.yidu.hbatsams.domain.vo.RoleVo;

import java.util.List;

public interface RoleService {

    /**
     * 分页查询所有
     * @return
     */
    public List<Role> findAll(Integer pageNum, Integer pageSize,String roleName);



    /**
     * 查询总行数
     * @return
     */
    int count(String roleName);


    public List<Role> selectAll(Role role);



    /**
     * 新增
     * @param rolevo
     */
    void add(RoleVo rolevo);


    /**
     * 新增
     * @param rolevo
     */
    void insert(RoleVo rolevo);

    /**
     * 删除
     * @param roleId
     */
    void delete(String roleId);

    /**
     * 修改
     * @param rolevo
     */
    void update(RoleVo rolevo);


    /**
     * id查询
     * @param roleId
     * @return
     */
    RoleVo findById(String roleId);


    /**
     * 是否显示的修改方法
     * @param roleId
     * @param roleValidity
     */
    void updateRolevalidity(String roleId, String roleValidity);


    void deleteUp(RoleVo vo);


    List<RoleModuleVo> findRoleId(String roleId);


    List<ModuleVo> findRoleAllId(String roleId);

    /**
     * 根据用户id查询角色
     * @param userId 用户id
     * @return
     */
    List<Role> findUserId(String userId);


}
